Property Checking for Design Patterns

نویسندگان

  • Libo Feng
  • Xiao Yu
  • Geguang Pu
  • Siyuan Jiang
  • Huibiao Zhu
  • Bing Gu
چکیده

Design patterns have been widely employed as a useful object-oriented technique in software engineering. In this paper, we present an approach to property checking for the application of design patterns in rCOS, which is known as a refinement calculus for object oriented systems. A relational calculus is proposed to specify the pattern properties we would like to check. To construct the abstract model from rCOS instead of analyzing directly on source code, we combine static and dynamic analysis together to achieve better checking efficiency. Class diagrams and object diagrams are obtained with the analysis of rCOS program. The extended operational semantics for rCOS with the object graph is given as the basis for representing object relationships. A general algorithm for calculating relational predicates is presented to perform the property checking. The examples of design patterns from GoF [7], such as abstract factory, builder etc, are also provided to illustrate the effectiveness of our approach from which we can tell whether some patterns are used correctly.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Property Speci cation Patterns for Finite - State Veri cation

Finite-state veriication (e.g., model checking) provides a powerful means to detect errors that are often subtle and diicult to reproduce. Nevertheless , the transition of this technology from research to practice has been slow. While there are a number of potential causes for reluctance in adopting such formal methods in practice, we believe that a primary cause rests with the fact that practi...

متن کامل

Property Speciication Patterns for Finite-state Veriication

Finite-state veriication (e.g., model checking) provides a powerful means to detect errors that are often subtle and diicult to reproduce. Nevertheless, the transition of this technology from research to practice has been slow. While there are a number of potential causes for reluctance in adopting such formal methods in practice, we believe that a primary cause rests with the fact that practit...

متن کامل

Real-Time Specification Patterns and Tools

An issue limiting the adoption of model checking technologies by the industry is the ability, for non-experts, to express their requirements using the property languages supported by verification tools. This has motivated the definition of dedicated assertion languages for expressing temporal properties at a higher level. However, only a limited number of these formalisms support the definition...

متن کامل

Reachability checking in complex and concurrent software systems using intelligent search methods

Software system verification is an efficient technique for ensuring the correctness of a software product, especially in safety-critical systems in which a small bug may have disastrous consequences. The goal of software verification is to ensure that the product fulfills the requirements. Studies show that the cost of finding and fixing errors in design time is less than finding and fixing the...

متن کامل

Recursive Petri Nets Theory and Application to Discrete Event Systems

In order to design and analyse complex systems, modelers need formal models with two contradictory requirements: a high expressivity and the decidability of behavioural property checking. Here we present and develop the theory of such a model, the recursive Petri nets. First, we show that the mechanisms supported by recursive Petri nets enable to model patterns of discrete event systems related...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009